package server.datamodel;

public class CreepDescription {

	private CreepTypeToCreepMapping creepTypeToCreepMapping;
	private String description;
	private String name;
	private int price;
	private int bounty;
	private int healthMax;
	private int income;
	private boolean slowImmune;
	private double speedMax;
	private String type;
	private String ID;
	
	public CreepDescription() {
		this.ID = Datamodel.generateID(this);
	}
	
	@Override
	public String toString() {
		return ID;
	}	
	
	
	public void setCreepTypeToCreepMapping(CreepTypeToCreepMapping creepTypeToCreepMapping) {
		if(this.creepTypeToCreepMapping != creepTypeToCreepMapping) {
			if(getCreepTypeToCreepMapping() != null) {
				getCreepTypeToCreepMapping().removeCreepDescription(this);
			}
			this.creepTypeToCreepMapping = creepTypeToCreepMapping;
			if(getCreepTypeToCreepMapping() != null) {
				getCreepTypeToCreepMapping().addCreepDescription(this);
			}
		}
	}
	
	public CreepTypeToCreepMapping getCreepTypeToCreepMapping() {
		return creepTypeToCreepMapping;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getPrice() {
		return price;
	}

	public void setPrice(int price) {
		this.price = price;
	}

	public int getBounty() {
		return bounty;
	}

	public void setBounty(int bounty) {
		this.bounty = bounty;
	}

	public int getHealthMax() {
		return healthMax;
	}

	public void setHealthMax(int healthMax) {
		this.healthMax = healthMax;
	}

	public int getIncome() {
		return income;
	}

	public void setIncome(int income) {
		this.income = income;
	}

	public boolean isSlowImmune() {
		return slowImmune;
	}

	public void setSlowImmune(boolean slowImmune) {
		this.slowImmune = slowImmune;
	}

	public double getSpeedMax() {
		return speedMax;
	}

	public void setSpeedMax(double speedMax) {
		this.speedMax = speedMax;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public String getID() {
		return ID;
	}

	public void setID(String iD) {
		ID = iD;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}
	
	
	
}
